export default {
  getRealWidth(width, constex) {
    switch (width) {
      case 'smallest':
        return constex.minColumnWidth;
      case 'small':
        return constex.minColumnWidth + 40;
      case 'medium':
        return constex.minColumnWidth + 80;
      case 'big':
        return constex.minColumnWidth + 120;
      default:
        if (width && typeof width === 'string') {
          if (width.indexOf('%') >= 0) {
            width = (Number(width.replace('%', '') * 0.01) * constex.outerClientRect.width).toFixed(
              2
            );
            width = Number(width);
          } else {
            width = Number(width);
          }
        }
        break;
    }
    return width;
  },
  setColRealWidth(col, constex) {
    let minWidth = col.minWidth || constex.minColumnWidth;
    switch (col.originWidth) {
      case 'smallest':
        col.width = constex.minColumnWidth;
        break;
      case 'small':
        col.width = constex.minColumnWidth + 40;
        break;
      case 'medium':
        col.width = constex.minColumnWidth + 80;
        break;
      case 'big':
        col.width = constex.minColumnWidth + 120;
        break;
      case 'auto':
        col.width = null;
        break;
      default:
        if (col.originWidth && typeof col.originWidth === 'string') {
          if (col.originWidth.indexOf('%') >= 0) {
            col.width = (
              Number(col.originWidth.replace('%', '') * 0.01) * constex.outerClientRect.width
            ).toFixed(2);
            col.width = Number(col.width);
          } else {
            col.width = Number(col.originWidth);
          }
        }

        // if (col.originWidth && String(col.originWidth).indexOf('%') >= 0) {
        //   col.width = (
        //     Number(col.originWidth.replace('%', '') * 0.01) * constex.outerClientRect.width
        //   ).toFixed(2);
        //   col.width = Number(col.width);
        // }
        break;
    }
    if (col.originWidth !== 'auto' && col.width < minWidth) {
      col.width = minWidth;
    }
  }
};
